package 变量和数据类型;
/*
    类变量：
        1.当我们想让某个类的对象都共享一个变量时，就可以考虑使用类变量
        2.类变量是该类的所有对象共享的，而实例变量是每个对象独享的
        3.加上this关键字成为类变量或静态变量，否则成为实例变量、普通变量、非静态变量
        4.类变量可以通过类名.类变量名 或者 对象名.类变量名 来访问
        5.实例变量不能通过 类名.变量名称 的方式调用
        6.类变量是在类加载的时候就初始化了，即使没有创建对象，也是可以使用类变量的
        7.类变量的生命周期是随着类的加载开始，随着类的消亡而销毁
    静态方法：
        1.类方法和普通方法都是随着类的加载而加载，将结构信息存储在方法去
        2.类方法中没有this的参数，普通方法中隐含了this的参数
        3.类方法可以通过类名调用，也可以通过对象名调用
        4.普通方法和对象有关，需要通过对象调用，不能同类名调用
        5.类方法不允许使用和对象相关的关键字，比如：this和super
        6.类方法中只能方法类方法
        7.普通的成员方法，既可以访问普通变量(方法)，也可以访问静态变量(方法)
 */
public class 类变量与类变量 {
    public static void main(String[] args) {
        B b = new B();
        System.out.println(B.c);
//        b.pay(1);
        B.pay(1);
    }
}

class B{
    public  int a = 100;
    public static int c = 200;

    public static void pay(int c){
        B.c = B.c + c;
        System.out.println(B.c);
    }

    public void hello(){
        pay(1);
        c = 1;
    }
}
